package com.gengzp.rpc.strategy;

import com.gengzp.rpc.model.serviceRegistration.resp.SearchServiceRegistrationResp;

import java.util.List;

/**
 * @ClassName RpcRemoteServiceRouteStrategy
 * @Description rpc框架远程服务路由策略接口
 * @Author gengzp
 * @Date 2025/8/20 17:12
 */
public interface RpcRemoteServiceRouteStrategy {

    /**
     * 根据服务名获取服务实例地址
     *
     * @param serviceName 服务名
     * @return 服务实例地址
     */
    List<String> getServiceInstanceAddressByServiceName(String serviceName);

    /**
     * 根据服务名获取服务注册信息
     *
     * @param serviceName 服务名
     * @return 服务注册信息
     */
    List<SearchServiceRegistrationResp> getServiceRegistrationInformationByServiceName(String serviceName);

}
